<html>
<head><meta charset="utf-8"><title>Is low-level OS error handling in scope for this group? · project-error-handling · Zulip Chat Archive</title></head>
<h2>Stream: <a href="https://rust-lang.github.io/zulip_archive/stream/257204-project-error-handling/index.html">project-error-handling</a></h2>
<h3>Topic: <a href="https://rust-lang.github.io/zulip_archive/stream/257204-project-error-handling/topic/Is.20low-level.20OS.20error.20handling.20in.20scope.20for.20this.20group.3F.html">Is low-level OS error handling in scope for this group?</a></h3>

<hr>

<base href="https://rust-lang.zulipchat.com">

<head><link href="https://rust-lang.github.io/zulip_archive/style.css" rel="stylesheet"></head>

<a name="210617587"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257204-project-error-handling/topic/Is%20low-level%20OS%20error%20handling%20in%20scope%20for%20this%20group%3F/near/210617587" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> John Millikin <a href="https://rust-lang.github.io/zulip_archive/stream/257204-project-error-handling/topic/Is.20low-level.20OS.20error.20handling.20in.20scope.20for.20this.20group.3F.html#210617587">(Sep 19 2020 at 14:22)</a>:</h4>
<p>Hello -- I'm wondering whether low-level error handling (specifically POSIX syscall error numbers) is in scope for this group. I'm hoping to get some sort of wrapper-around-u16 defined in either <code>core</code> or a subcrate of <code>std</code> so that it's easier to compose libraries when compiling for targets that can't depend on <code>libc</code>. I started an RFC at <a href="https://github.com/rust-lang/rfcs/pull/2973">https://github.com/rust-lang/rfcs/pull/2973</a> a few weeks ago but it's not attracted any interest from the libs team, and I don't know who is able to drive something like that forward.</p>



<a name="210617673"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257204-project-error-handling/topic/Is%20low-level%20OS%20error%20handling%20in%20scope%20for%20this%20group%3F/near/210617673" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> John Millikin <a href="https://rust-lang.github.io/zulip_archive/stream/257204-project-error-handling/topic/Is.20low-level.20OS.20error.20handling.20in.20scope.20for.20this.20group.3F.html#210617673">(Sep 19 2020 at 14:24)</a>:</h4>
<p>very rough draft at <a href="https://github.com/jmillikin/rust-posix-error-numbers">https://github.com/jmillikin/rust-posix-error-numbers</a> (<a href="https://jmillikin.github.io/rust-posix-error-numbers/target/doc/posix_error_numbers/struct.ErrorCode.html">rustdoc</a>)</p>



<a name="210617687"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257204-project-error-handling/topic/Is%20low-level%20OS%20error%20handling%20in%20scope%20for%20this%20group%3F/near/210617687" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/257204-project-error-handling/topic/Is.20low-level.20OS.20error.20handling.20in.20scope.20for.20this.20group.3F.html#210617687">(Sep 19 2020 at 14:24)</a>:</h4>
<p><span class="user-mention" data-user-id="325706">@John Millikin</span> I remember glancing over this a while ago - I don't think you ever said <em>why</em> you can't depend on libc</p>



<a name="210617693"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257204-project-error-handling/topic/Is%20low-level%20OS%20error%20handling%20in%20scope%20for%20this%20group%3F/near/210617693" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/257204-project-error-handling/topic/Is.20low-level.20OS.20error.20handling.20in.20scope.20for.20this.20group.3F.html#210617693">(Sep 19 2020 at 14:25)</a>:</h4>
<p><a href="https://github.com/rust-lang/rfcs/pull/2973#issuecomment-671108502">https://github.com/rust-lang/rfcs/pull/2973#issuecomment-671108502</a></p>



<a name="210617769"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257204-project-error-handling/topic/Is%20low-level%20OS%20error%20handling%20in%20scope%20for%20this%20group%3F/near/210617769" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> John Millikin <a href="https://rust-lang.github.io/zulip_archive/stream/257204-project-error-handling/topic/Is.20low-level.20OS.20error.20handling.20in.20scope.20for.20this.20group.3F.html#210617769">(Sep 19 2020 at 14:26)</a>:</h4>
<p>I'm using this for targets that don't have libc, either because they're early in the boot process (e.g. a Linux initrd) or because libc is not specified for the platform. I would also like to use this for hacking on systems like Redox which are not based on C.</p>



<a name="210617776"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257204-project-error-handling/topic/Is%20low-level%20OS%20error%20handling%20in%20scope%20for%20this%20group%3F/near/210617776" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/257204-project-error-handling/topic/Is.20low-level.20OS.20error.20handling.20in.20scope.20for.20this.20group.3F.html#210617776">(Sep 19 2020 at 14:26)</a>:</h4>
<p><code>libc</code>, the C library, is different from <code>libc</code> the crate</p>



<a name="210617786"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257204-project-error-handling/topic/Is%20low-level%20OS%20error%20handling%20in%20scope%20for%20this%20group%3F/near/210617786" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/257204-project-error-handling/topic/Is.20low-level.20OS.20error.20handling.20in.20scope.20for.20this.20group.3F.html#210617786">(Sep 19 2020 at 14:26)</a>:</h4>
<p>is the crate not available on those platforms?</p>



<a name="210617788"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257204-project-error-handling/topic/Is%20low-level%20OS%20error%20handling%20in%20scope%20for%20this%20group%3F/near/210617788" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> John Millikin <a href="https://rust-lang.github.io/zulip_archive/stream/257204-project-error-handling/topic/Is.20low-level.20OS.20error.20handling.20in.20scope.20for.20this.20group.3F.html#210617788">(Sep 19 2020 at 14:26)</a>:</h4>
<p>Many of the comments on that ticket seem to assume that C is the fundamental language of the kernel, which is not true.</p>



<a name="210617860"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257204-project-error-handling/topic/Is%20low-level%20OS%20error%20handling%20in%20scope%20for%20this%20group%3F/near/210617860" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> John Millikin <a href="https://rust-lang.github.io/zulip_archive/stream/257204-project-error-handling/topic/Is.20low-level.20OS.20error.20handling.20in.20scope.20for.20this.20group.3F.html#210617860">(Sep 19 2020 at 14:28)</a>:</h4>
<p>It seems pretty bizarre that I would have to depend on another language's standard library, or stub out its build process, to get a standardized newtype for what is essentially an unsigned integer.</p>



<a name="210617870"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257204-project-error-handling/topic/Is%20low-level%20OS%20error%20handling%20in%20scope%20for%20this%20group%3F/near/210617870" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/257204-project-error-handling/topic/Is.20low-level.20OS.20error.20handling.20in.20scope.20for.20this.20group.3F.html#210617870">(Sep 19 2020 at 14:28)</a>:</h4>
<p><code>libc</code> the crate does not depend on the <code>libc</code> C library</p>



<a name="210617882"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257204-project-error-handling/topic/Is%20low-level%20OS%20error%20handling%20in%20scope%20for%20this%20group%3F/near/210617882" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/257204-project-error-handling/topic/Is.20low-level.20OS.20error.20handling.20in.20scope.20for.20this.20group.3F.html#210617882">(Sep 19 2020 at 14:29)</a>:</h4>
<p>I feel like we're talking at cross-purposes here: the crate basically <em>is</em> the wrapper around native types that you're asking for</p>



<a name="210617886"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257204-project-error-handling/topic/Is%20low-level%20OS%20error%20handling%20in%20scope%20for%20this%20group%3F/near/210617886" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/257204-project-error-handling/topic/Is.20low-level.20OS.20error.20handling.20in.20scope.20for.20this.20group.3F.html#210617886">(Sep 19 2020 at 14:29)</a>:</h4>
<p>it just has an unfortunate name</p>



<a name="210617905"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257204-project-error-handling/topic/Is%20low-level%20OS%20error%20handling%20in%20scope%20for%20this%20group%3F/near/210617905" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> John Millikin <a href="https://rust-lang.github.io/zulip_archive/stream/257204-project-error-handling/topic/Is.20low-level.20OS.20error.20handling.20in.20scope.20for.20this.20group.3F.html#210617905">(Sep 19 2020 at 14:29)</a>:</h4>
<p>The <code>libc</code> crate is also a wrapper for the C standard library, in whatever form that takes on the current platform.</p>



<a name="210617958"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257204-project-error-handling/topic/Is%20low-level%20OS%20error%20handling%20in%20scope%20for%20this%20group%3F/near/210617958" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> John Millikin <a href="https://rust-lang.github.io/zulip_archive/stream/257204-project-error-handling/topic/Is.20low-level.20OS.20error.20handling.20in.20scope.20for.20this.20group.3F.html#210617958">(Sep 19 2020 at 14:30)</a>:</h4>
<p>If the solution is to move the definition of non-C platform types such as error codes out of libc into its own crate, that seems like a fine solution.</p>



<a name="210617986"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257204-project-error-handling/topic/Is%20low-level%20OS%20error%20handling%20in%20scope%20for%20this%20group%3F/near/210617986" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> John Millikin <a href="https://rust-lang.github.io/zulip_archive/stream/257204-project-error-handling/topic/Is.20low-level.20OS.20error.20handling.20in.20scope.20for.20this.20group.3F.html#210617986">(Sep 19 2020 at 14:31)</a>:</h4>
<p>The main benefit of the newtype is that it simplifies comparisons -- I can take a <code>isize</code> from the kernel, and a <code>u32</code> from a spec sheet, and compare them both to the same constant type-safely.</p>



<a name="210618078"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257204-project-error-handling/topic/Is%20low-level%20OS%20error%20handling%20in%20scope%20for%20this%20group%3F/near/210618078" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> John Millikin <a href="https://rust-lang.github.io/zulip_archive/stream/257204-project-error-handling/topic/Is.20low-level.20OS.20error.20handling.20in.20scope.20for.20this.20group.3F.html#210618078">(Sep 19 2020 at 14:33)</a>:</h4>
<p>It is 23:30 in my timezone so I'm not going to be able to chat much now, but if there's any way I can help move that proposal along I'd be happy to help. The only thing I really don't want to do is maintain a <code>posix_error_numbers</code> crate on <a href="http://crates.io">crates.io</a>, because that seems like an unbounded amount of work to keep such a crate up to date with rustc as people contribute new targets.</p>



<a name="210633961"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257204-project-error-handling/topic/Is%20low-level%20OS%20error%20handling%20in%20scope%20for%20this%20group%3F/near/210633961" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jane Lusby <a href="https://rust-lang.github.io/zulip_archive/stream/257204-project-error-handling/topic/Is.20low-level.20OS.20error.20handling.20in.20scope.20for.20this.20group.3F.html#210633961">(Sep 19 2020 at 20:33)</a>:</h4>
<p><span class="user-mention" data-user-id="325706">@John Millikin</span> absolutely, feel free to create an issue to track this in the project group repo and join the meetings to help drive work on it</p>



<a name="210633971"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257204-project-error-handling/topic/Is%20low-level%20OS%20error%20handling%20in%20scope%20for%20this%20group%3F/near/210633971" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jane Lusby <a href="https://rust-lang.github.io/zulip_archive/stream/257204-project-error-handling/topic/Is.20low-level.20OS.20error.20handling.20in.20scope.20for.20this.20group.3F.html#210633971">(Sep 19 2020 at 20:33)</a>:</h4>
<p>I've not given much thought to error codes and I have other tasks that I'd like to drive first personally but I think we can definitely work together to provide feedback on any work you do etc etc</p>



<a name="210641945"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257204-project-error-handling/topic/Is%20low-level%20OS%20error%20handling%20in%20scope%20for%20this%20group%3F/near/210641945" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jubilee <a href="https://rust-lang.github.io/zulip_archive/stream/257204-project-error-handling/topic/Is.20low-level.20OS.20error.20handling.20in.20scope.20for.20this.20group.3F.html#210641945">(Sep 20 2020 at 00:25)</a>:</h4>
<blockquote>
<div class="codehilite"><pre><span></span><code>Defining and codifying common error handling terminology.
Generating consensus on current error handling best practices.
Identifying pain points that exist in Rust’s error handling story.
Communicating current error handling best practices.
Consolidating the Rust error handling ecosystem.
</code></pre></div>


</blockquote>
<p>I think it is definitely within the project group's scope to think about low-level error-handling, even if only because of "identifying pain points". I have also seen people who have concerns about systems that are embedded but want to be able to provide and use the Vec API without panicking in the case of overallocation. (this overlaps with wg-alloc).</p>
<p>Not normally a concern because most people will never allocate anywhere near an isize, nevermind over... but then when you have the entire system resources to yourself because you <em>are</em> the system...</p>



<a name="210642013"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257204-project-error-handling/topic/Is%20low-level%20OS%20error%20handling%20in%20scope%20for%20this%20group%3F/near/210642013" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jake Goulding <a href="https://rust-lang.github.io/zulip_archive/stream/257204-project-error-handling/topic/Is.20low-level.20OS.20error.20handling.20in.20scope.20for.20this.20group.3F.html#210642013">(Sep 20 2020 at 00:27)</a>:</h4>
<p><span class="user-mention silent" data-user-id="281757">Jubilee</span> <a href="#narrow/stream/257204-project-error-handling/topic/Is.20low-level.20OS.20error.20handling.20in.20scope.20for.20this.20group.3F/near/210641945">said</a>:</p>
<blockquote>
<p>most people will never allocate anywhere near an isize, nevermind over...</p>
</blockquote>
<p>remember that on AVR , <code>usize</code> == <code>u16</code>, so <code>i16</code> isn't an outrageous number of elements</p>



<a name="210642237"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257204-project-error-handling/topic/Is%20low-level%20OS%20error%20handling%20in%20scope%20for%20this%20group%3F/near/210642237" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Lokathor <a href="https://rust-lang.github.io/zulip_archive/stream/257204-project-error-handling/topic/Is.20low-level.20OS.20error.20handling.20in.20scope.20for.20this.20group.3F.html#210642237">(Sep 20 2020 at 00:34)</a>:</h4>
<p>and note that an allocation size in <em>bytes</em> cannot exceed isize::MAX</p>



<a name="210642354"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257204-project-error-handling/topic/Is%20low-level%20OS%20error%20handling%20in%20scope%20for%20this%20group%3F/near/210642354" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jubilee <a href="https://rust-lang.github.io/zulip_archive/stream/257204-project-error-handling/topic/Is.20low-level.20OS.20error.20handling.20in.20scope.20for.20this.20group.3F.html#210642354">(Sep 20 2020 at 00:39)</a>:</h4>
<p>Yeaaaah.</p>
<p>I have given more thought to the POSIX types thing myself, having recently seen how mazy that can get as part of e.g. updating the wasm targets, and I do agree that basic bindings to the system that don't _have_ to go through libc probably should not be in that crate. If it's true now that the libc crate can currently be used without depending on the actual libc, then that's Fine But Weird, Frankly, because that doesn't really suggest a promise that such will remain true.</p>



<a name="210642457"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257204-project-error-handling/topic/Is%20low-level%20OS%20error%20handling%20in%20scope%20for%20this%20group%3F/near/210642457" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jake Goulding <a href="https://rust-lang.github.io/zulip_archive/stream/257204-project-error-handling/topic/Is.20low-level.20OS.20error.20handling.20in.20scope.20for.20this.20group.3F.html#210642457">(Sep 20 2020 at 00:42)</a>:</h4>
<blockquote>
<p>low-level error handling (specifically POSIX syscall error numbers)</p>
</blockquote>
<p>My 2¢ is that low-level makes sense for the group, but that POSIX is a combination of "too high" and "too platform specific".</p>



<a name="210642636"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257204-project-error-handling/topic/Is%20low-level%20OS%20error%20handling%20in%20scope%20for%20this%20group%3F/near/210642636" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jubilee <a href="https://rust-lang.github.io/zulip_archive/stream/257204-project-error-handling/topic/Is.20low-level.20OS.20error.20handling.20in.20scope.20for.20this.20group.3F.html#210642636">(Sep 20 2020 at 00:48)</a>:</h4>
<p>Yeah, I would expect a sensible result to be a little more like "produce a recommendation/guidance/motivation for further approaches to the issue" rather than "do something terribly particular".</p>



<a name="210642638"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257204-project-error-handling/topic/Is%20low-level%20OS%20error%20handling%20in%20scope%20for%20this%20group%3F/near/210642638" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jake Goulding <a href="https://rust-lang.github.io/zulip_archive/stream/257204-project-error-handling/topic/Is.20low-level.20OS.20error.20handling.20in.20scope.20for.20this.20group.3F.html#210642638">(Sep 20 2020 at 00:48)</a>:</h4>
<p><strong>Joshua Nelson</strong> <a href="#narrow/stream/257204-project-error-handling/topic/Is.20low-level.20OS.20error.20handling.20in.20scope.20for.20this.20group.3F/near/210617870">said</a>:</p>
<blockquote>
<p><code>libc</code> the crate does not depend on the <code>libc</code> C library</p>
</blockquote>
<p><a href="https://github.com/rust-lang/rfcs/pull/2973#issuecomment-671108502">This seems to have been communicated to OP already</a>, but perhaps they missed it.</p>
<p><strong>John Millikin</strong> <a href="#narrow/stream/257204-project-error-handling/topic/Is.20low-level.20OS.20error.20handling.20in.20scope.20for.20this.20group.3F/near/210618078">said</a>:</p>
<blockquote>
<p>I really don't want to do is maintain a <code>posix_error_numbers</code> crate on <a href="http://crates.io">crates.io</a>, because that seems like an unbounded amount of work to keep such a crate up to date with rustc as people contribute new targets.</p>
</blockquote>
<p>I agree with <a href="https://github.com/rust-lang/rfcs/pull/2973#issuecomment-671053937">sfackler's comment</a>  in reference to this point.</p>



<a name="210643958"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257204-project-error-handling/topic/Is%20low-level%20OS%20error%20handling%20in%20scope%20for%20this%20group%3F/near/210643958" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> John Millikin <a href="https://rust-lang.github.io/zulip_archive/stream/257204-project-error-handling/topic/Is.20low-level.20OS.20error.20handling.20in.20scope.20for.20this.20group.3F.html#210643958">(Sep 20 2020 at 01:34)</a>:</h4>
<p>Thanks! I've filed a tracking issue at <a href="https://github.com/rust-lang/project-error-handling/issues/7">https://github.com/rust-lang/project-error-handling/issues/7</a>, and will try to attend meetings if timezones permit.</p>



<a name="210651591"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257204-project-error-handling/topic/Is%20low-level%20OS%20error%20handling%20in%20scope%20for%20this%20group%3F/near/210651591" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Lokathor <a href="https://rust-lang.github.io/zulip_archive/stream/257204-project-error-handling/topic/Is.20low-level.20OS.20error.20handling.20in.20scope.20for.20this.20group.3F.html#210651591">(Sep 20 2020 at 06:05)</a>:</h4>
<p>Might it make sense to pull the error codes into a crate that libc depends on, but that other crates can also depend on? That's the direction that C types might go in the future.</p>



<a name="210665667"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257204-project-error-handling/topic/Is%20low-level%20OS%20error%20handling%20in%20scope%20for%20this%20group%3F/near/210665667" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/257204-project-error-handling/topic/Is.20low-level.20OS.20error.20handling.20in.20scope.20for.20this.20group.3F.html#210665667">(Sep 20 2020 at 12:49)</a>:</h4>
<blockquote>
<p>That's the direction that C types might go in the future.</p>
</blockquote>
<p>are you talking about <code>libc</code> or about <code>target_lexicon</code>?</p>



<a name="210669946"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/257204-project-error-handling/topic/Is%20low-level%20OS%20error%20handling%20in%20scope%20for%20this%20group%3F/near/210669946" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Lokathor <a href="https://rust-lang.github.io/zulip_archive/stream/257204-project-error-handling/topic/Is.20low-level.20OS.20error.20handling.20in.20scope.20for.20this.20group.3F.html#210669946">(Sep 20 2020 at 14:46)</a>:</h4>
<p>libc is working on making cty a dependency which it just publicly re-exports</p>



<hr><p>Last updated: Aug 07 2021 at 22:04 UTC</p>
</html>